package com.shutong.springboot;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Conditional;
import org.springframework.context.annotation.Configuration;

// 必须实现 AutoConfiguration 这个注解类才可以
// 不实现 AutoConfiguration，那么在ShuTongImportSelect 中，用 spi机制加载的时候，就不能到加载当前类
//  不实现 AutoConfiguration 是扫描不到 @Configuration 注解的
@Configuration
public class WebServerAutoConfiguration implements AutoConfiguration {

    @Bean
    @ConditionalOnClass("org.apache.catalina.startup.Tomcat")
    public TomcatWebServer tomcatWebServer(){
        return new TomcatWebServer();
    }

    @Bean
    @ConditionalOnClass("org.eclipse.jetty.server.Server")
    public JettyWebServer jettyWebServer(){
        return new JettyWebServer();
    }
}